Feature/solve first homework - #16
Conversation
| std::vector<std::string> SplitString(const std::string& data) { | ||
| return {}; | ||
| } | ||
| vector <string> SplitString(string& s){ |
There was a problem hiding this comment.
Данной функции следует принимать const string& s по очень важной причине: убирая модификатор const вы теряете возможность передавать в функцию с-строки типа const char* (а именно такой тип у литералов вроде "Hello World")
| } | ||
| vector <string> SplitString(string& s){ | ||
| s += " "; | ||
| string CurrentString = ""; |
There was a problem hiding this comment.
По кодстайлу имя должно быть current_string (кстати, не очень удачное имя; лучше word, token, ну или даже sub_string)
| vector <string> SplitString(string& s){ | ||
| s += " "; | ||
| string CurrentString = ""; | ||
| char* ptr = &(s[0]); |
There was a problem hiding this comment.
Тут указатель совсем не нужен. Лучше обращаться к символу в строке просто по его номеру s[i]
| s += " "; | ||
| string CurrentString = ""; | ||
| char* ptr = &(s[0]); | ||
| vector <string> data; |
There was a problem hiding this comment.
Плохое имя. Что угодно можно назвать data. Я бы назвал эту переменную просто res
There was a problem hiding this comment.
я бы не экономил символы и вообще написал result, так сразу понятно, а с res можно спутать с русрсом, что вряд ли но может сбить в других местах
| ++ptr; | ||
| } | ||
| for(int i = 0; i < data.size(); ++i){ | ||
| cout << data[i] << endl;} |
There was a problem hiding this comment.
Слова в cout вы, наверно, для отладки выводили? Отладочный код из финальной версии надо убирать (особенно если он производит побочные действия вроде засорения окна консоли)
| } | ||
| else { | ||
| CurrentString += *ptr; | ||
| } |
| char* ptr = &(s[0]); | ||
| vector <string> data; | ||
|
|
||
| while(*ptr != '\0'){ |
There was a problem hiding this comment.
for (size_t i = 0; i < s.size(); i++) {
| #include <stack> | ||
| #include <iostream> | ||
| #include <vector> | ||
| using namespace std; |
There was a problem hiding this comment.
Отделите пустой строкой #include <vector> от using namespace std; (а ещё лучше вообще using namespace std не использовать)
| data.push_back(CurrentString); | ||
| CurrentString = ""; | ||
| ++ptr; | ||
| } |
There was a problem hiding this comment.
Из-за неаккуратных отступов непонятно, какая строчка в какой блок вложена
| #include <stack> | ||
| #include <iostream> | ||
| #include <vector> | ||
| using namespace std; |
There was a problem hiding this comment.
считается плохим тоном использовать using namespace std; да и других пространств имен, в исключении случая когда они используются внутри функции
| s += " "; | ||
| string CurrentString = ""; | ||
| char* ptr = &(s[0]); | ||
| vector <string> data; |
There was a problem hiding this comment.
я бы не экономил символы и вообще написал result, так сразу понятно, а с res можно спутать с русрсом, что вряд ли но может сбить в других местах
No description provided.